'''
图书管理系统
至少5本书
library = [{'bookname':xxx,'author':xxx,'price':xxx,'number':xxx},{},{},{},{}]
1.借书
2.还书
3.查询（书名/作者）
4.查看所有
5.退出
'''
# 定义图书库，包含5本书的信息，每本书有书名、作者、价格和数量
library = [{'bookname':'Python从入门到精通','author':'张三','price':99,'number':10},
          {'bookname':'Java从入门到精通','author':'李四','price':89,'number':5},
          {'bookname':'C++从入门到精通','author':'王五','price':79,'number':3},
          {'bookname':'C语言从入门到精通','author':'赵六','price':69,'number':8},
          {'bookname':'JavaScript从入门到精通','author':'钱七','price':59,'number':6}]
# 无限循环，直到用户选择退出
while True:
    # 打印菜单选项
    print('1.借书\n2.还书\n3.查询\n4.查看所有\n5.退出')
    # 获取用户的选择
    choice = input('请输入你的选择：')
    # 如果用户选择借书
    if choice == '1':
        # 获取用户输入的书名
        bookname = input('请输入书名：')
        # 遍历图书库
        for i in library:
            # 如果找到匹配的书名
            if i['bookname'] == bookname:
                # 如果书的数量大于0
                if i['number'] > 0:
                    # 数量减1
                    i['number'] -= 1
                    # 打印借书成功
                    print('借书成功！')
                    break
                else:
                    # 打印该书已借完
                    print('该书已借完！')
                    break
        else:
            # 如果没有找到匹配的书名
            print('没有找到该书！')
    # 如果用户选择还书
    elif choice == '2':
        # 获取用户输入的书名
        bookname = input('请输入书名：')
        # 遍历图书库
        for i in library:
            # 如果找到匹配的书名
            if i['bookname'] == bookname:
                # 数量加1
                i['number'] += 1
                # 打印还书成功
                print('还书成功！')
                break
        else:
            # 如果没有找到匹配的书名
            print('没有找到该书！')
    # 如果用户选择查询
    elif choice == '3':
        # 打印查询菜单选项
        print('1.按书名查询\n2.按作者查询')
        # 获取用户的选择
        choice2 = input('请输入你的选择：')
        # 如果用户选择按书名查询
        if choice2 == '1':
            # 获取用户输入的书名
            bookname = input('请输入书名：')
            # 遍历图书库
            for i in library:
                # 如果找到匹配的书名
                if i['bookname'] == bookname:
                    # 打印书的信息
                    print(i)
                    break
            else:
                # 如果没有找到匹配的书名
                print('没有找到该书！')
        # 如果用户选择按作者查询
        elif choice2 == '2':
            # 获取用户输入的作者
            author = input('请输入作者：')
            # 遍历图书库
            for i in library:
                # 如果找到匹配的作者
                if i['author'] == author:
                    # 打印书的信息
                    print(i)
                else:
                    # 如果没有找到匹配的作者
                    print('没有找到该作者的书！')
        else:
            # 如果用户输入的选择不正确
            print('输入错误！')
    # 如果用户选择查看所有书籍
    elif choice == '4':
        # 遍历图书库并打印每本书的信息
        for i in library:
            print(i)
    # 如果用户选择退出
    elif choice == '5':
        # 退出循环
        break
    else:
        # 如果用户输入的选择不正确
        print('输入错误！')
# 打印退出信息
print('谢谢使用！')
